<?php

namespace App\Http\Middleware;

use Closure;
use Illuminate\Contracts\Auth\Guard;

class RedirectIfAuthenticated {
	/**
	 * The Guard implementation.
	 * @var Guard
	 */
	protected $auth;

	/**
	 * Create a new filter instance.
	 * @param  Guard $auth
	 * @return void
	 */
	public function __construct(Guard $auth) {
		$this->auth = $auth;
	}

	/**
	 * Handle an incoming request.
	 * @param  \Illuminate\Http\Request $request
	 * @param  \Closure                 $next
	 * @param  $redirect
	 * @return mixed
	 */
	public function handle($request, Closure $next, $redirect = '/') {
		if ($this->auth->check()) {
			return redirect($redirect);
		}

		return $next($request);
	}
}
